1. Field
Embodiments described herein relates generally to the field of video systems. More particularly, the disclosure relates to a system, apparatus and method for streaming videos.
2. Description of the Related Art
Video on Demand (VOD) systems allow users to request and view videos over a network.
In some VOD systems, a user requests a video using a box (e.g., a set-top receiver) connected through a network to a server farm. In response to a video request, the server farm “streams” the selected video to the box. The video is presented to the user while the rest of the video is being downloaded. As the number of boxes in the network increases, the bandwidth capacity required at the server farm increases.
In other VOD systems, a video library is distributed among the boxes of multiple users. When a user requests a video using their box, the request is serviced over the network by one of the boxes that store the requested video. This peer-to-peer network distributes the bandwidth requirements across the boxes on the network. As the number of boxes in the network increases, the quantity of videos requested increases but the bandwidth capacity also increases since there are more boxes to service the video requests.
However, the capacity to serve a particular video is limited, since a predetermined number of copies of that video are distributed among a fixed number of boxes. Each box has limited bandwidth capacity to serve the video(s) stored in that box. Thus, the peer-to-peer configuration restricts the flexibility to concurrently deliver quantities of particular videos.
In other VOD systems, the entire video is downloaded to the box before it is presented on the user's video system. By lengthening the period over which the video is downloaded, the bandwidth requirements can be reduced whether using a centralized server or a peer-to-peer network. However, the longer download period increases the delay from the time the user requests a video to when that user can watch the requested video.
What is needed is a VOD system that allows a video to be watched soon after the request. What is also needed is a VOD system that allows more flexibility in terms of capacity to concurrently serve particular videos to multiple users. What is further needed is a VOD system that can scale in terms of the number of boxes being served while limiting the increase in bandwidth requirements.